package plp.funcoo.value;

import plp.funcoo.environment.compilation.Environment;
import plp.funcoo.exceptions.ClassNotDeclared;
import plp.funcoo.exceptions.VarNotDeclared;
import plp.funcoo.expressions.Expression;
import plp.funcoo.types.PrimitiveType;
import plp.funcoo.util.Type;

public class BooleanValue extends ConcretValue<Boolean>{

	
	public BooleanValue(boolean value)
	{
		super(value);
	}
	

	@Override
	public Type getType(Environment envi) throws VarNotDeclared,
			ClassNotDeclared {
		return (Type) PrimitiveType.Type_BOOLEAN;
	}


	@Override
	public Expression makeCopy() {
		
		return new BooleanValue(getValue());
	}




	
	
}
